"""
分数运算

问题：
    你进入时间机器，突然发现你正在做小学家庭作业，并涉及到分数计算问题。
    或者你可能需要写代码去计算在你的木工工厂中的测量值。
解决方案：
    fractions 模块可以被用来执行包含分数的数学运算。
"""

from fractions import Fraction


def use_fractions():
    x = Fraction(5, 4)
    y = Fraction(7, 16)
    z = x * y
    print(x + y)
    print(x * y)
    print(z.numerator, z.denominator)
    print(float(z))
    print(z.limit_denominator(8))
    # 输出结果：
    """
    27/16
    35/64
    35 64
    0.546875
    4/7
    """

    x = 3.75
    y = Fraction(*x.as_integer_ratio())
    print(y)
    # 输出结果：
    """
    15/4
    """


if __name__ == '__main__':
    use_fractions()
